home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1997 / HAM Radio 1997.iso / vcls / multlang.000 / example / main.pas < prev    next >
Pascal/Delphi Source File  |  1996-04-08  |  7KB  |  247 lines

  1. unit Main;
  2.  
  3. interface
  4.  
  5. uses WinTypes, WinProcs, SysUtils, Classes, Graphics, Forms, Controls, Menus,
  6.   StdCtrls, Dialogs, Buttons, Messages, ExtCtrls, Mcombbox, MultLang, DTC,
  7.   MDlgs, MMsg, MCtls, MStrLst, MIcons, MImpExp, MObjSize, MAdptOn, MDefStr, MEdit,
  8.   MReg;
  9.  
  10. type
  11.   TMainForm = class(TForm)
  12.     MainMenu1: TMainMenu;
  13.     Panel1: TPanel;
  14.     StatusLine: TPanel;
  15.     File1: TMenuItem;
  16.     Panel2: TPanel;
  17.     Window1: TMenuItem;
  18.     Help1: TMenuItem;
  19.     FileExitItem: TMenuItem;
  20.     WindowCascadeItem: TMenuItem;
  21.     WindowTileItem: TMenuItem;
  22.     WindowArrangeItem: TMenuItem;
  23.     WindowMinimizeItem: TMenuItem;
  24.     Features1: TMenuItem;
  25.     Language1: TMenuItem;
  26.     DateTimeCurrency1: TMenuItem;
  27.     Commondialogs1: TMenuItem;
  28.     Messagedialogs1: TMenuItem;
  29.     CommonControls1: TMenuItem;
  30.     Stringlists1: TMenuItem;
  31.     Icons1: TMenuItem;
  32.     ImportExport1: TMenuItem;
  33.     Objectresizing1: TMenuItem;
  34.     Userdefinedstrings1: TMenuItem;
  35.     Adopton1: TMenuItem;
  36.     Speedinlargeprojects1: TMenuItem;
  37.     Order1: TMenuItem;
  38.     MultLang1: TMultLang;
  39.     procedure FormCreate(Sender: TObject);
  40.     procedure WindowCascadeItemClick(Sender: TObject);
  41.     procedure UpdateMenuItems(Sender: TObject);
  42.     procedure WindowTileItemClick(Sender: TObject);
  43.     procedure WindowArrangeItemClick(Sender: TObject);
  44.     procedure FileExitItemClick(Sender: TObject);
  45.     procedure WindowMinimizeItemClick(Sender: TObject);
  46.     procedure FormDestroy(Sender: TObject);
  47.     procedure DateTimeCurrency1Click(Sender: TObject);
  48.     procedure Commondialogs1Click(Sender: TObject);
  49.     procedure Messagedialogs1Click(Sender: TObject);
  50.     procedure CommonControls1Click(Sender: TObject);
  51.     procedure Stringlists1Click(Sender: TObject);
  52.     procedure Icons1Click(Sender: TObject);
  53.     procedure ImportExport1Click(Sender: TObject);
  54.     procedure Objectresizing1Click(Sender: TObject);
  55.     procedure Adopton1Click(Sender: TObject);
  56.     procedure Userdefinedstrings1Click(Sender: TObject);
  57.     procedure Speedinlargeprojects1Click(Sender: TObject);
  58.     procedure Order1Click(Sender: TObject);
  59.   private
  60.     { Private declarations }
  61.     procedure ShowHint(Sender: TObject);
  62.   public
  63.     { Public declarations }
  64.   end;
  65.  
  66. var
  67.   MainForm: TMainForm;
  68.  
  69. implementation
  70.  
  71. {$R *.DFM}
  72.  
  73. procedure TMainForm.FormCreate(Sender: TObject);
  74. begin
  75.   Application.OnHint := ShowHint;
  76.   Screen.OnActiveFormChange := UpdateMenuItems;
  77. end;
  78.  
  79. procedure TMainForm.ShowHint(Sender: TObject);
  80. begin
  81.   StatusLine.Caption := Application.Hint;
  82. end;
  83.  
  84. procedure TMainForm.FileExitItemClick(Sender: TObject);
  85. begin
  86.   Close;
  87. end;
  88.  
  89. procedure TMainForm.WindowCascadeItemClick(Sender: TObject);
  90. begin
  91.   Cascade;
  92. end;
  93.  
  94. procedure TMainForm.WindowTileItemClick(Sender: TObject);
  95. begin
  96.   Tile;
  97. end;
  98.  
  99. procedure TMainForm.WindowArrangeItemClick(Sender: TObject);
  100. begin
  101.   ArrangeIcons;
  102. end;
  103.  
  104. procedure TMainForm.WindowMinimizeItemClick(Sender: TObject);
  105. var
  106.   I: Integer;
  107. begin
  108.   { Must be done backwards through the MDIChildren array }
  109.   for I := MDIChildCount - 1 downto 0 do
  110.     MDIChildren[I].WindowState := wsMinimized;
  111. end;
  112.  
  113. procedure TMainForm.UpdateMenuItems(Sender: TObject);
  114. begin
  115.   WindowCascadeItem.Enabled := MDIChildCount > 0;
  116.   WindowTileItem.Enabled := MDIChildCount > 0;
  117.   WindowArrangeItem.Enabled := MDIChildCount > 0;
  118.   WindowMinimizeItem.Enabled := MDIChildCount > 0;
  119. end;
  120.  
  121. procedure TMainForm.FormDestroy(Sender: TObject);
  122. begin
  123.   Screen.OnActiveFormChange := nil;
  124. end;
  125.  
  126. procedure TMainForm.DateTimeCurrency1Click(Sender: TObject);
  127. var I: Integer; AChild:TForm;
  128. begin
  129.   AChild:=nil;
  130.   for I := 0 to MDIChildCount-1 do
  131.     if (MDIChildren[I].ClassName='TDTCDlg') then AChild:=MDIChildren[I];
  132.   if (AChild=nil) then AChild:=TDTCDlg.Create(Application);
  133.   AChild.Show;
  134. end;
  135.  
  136. procedure TMainForm.Commondialogs1Click(Sender: TObject);
  137. var I: Integer; AChild:TForm;
  138. begin
  139.   AChild:=nil;
  140.   for I := 0 to MDIChildCount-1 do
  141.     if (MDIChildren[I].ClassName='TDlgsDlg') then AChild:=MDIChildren[I];
  142.   if (AChild=nil) then AChild:=TDlgsDlg.Create(Application);
  143.   AChild.Show;
  144. end;
  145.  
  146. procedure TMainForm.Messagedialogs1Click(Sender: TObject);
  147. var I: Integer; AChild:TForm;
  148. begin
  149.   AChild:=nil;
  150.   for I := 0 to MDIChildCount-1 do
  151.     if (MDIChildren[I].ClassName='TMMsgDlg') then AChild:=MDIChildren[I];
  152.   if (AChild=nil) then AChild:=TMMsgDlg.Create(Application);
  153.   AChild.Show;
  154. end;
  155.  
  156. procedure TMainForm.CommonControls1Click(Sender: TObject);
  157. var I: Integer; AChild:TForm;
  158. begin
  159.   AChild:=nil;
  160.   for I := 0 to MDIChildCount-1 do
  161.     if (MDIChildren[I].ClassName='TMCtrlsDlg') then AChild:=MDIChildren[I];
  162.   if (AChild=nil) then AChild:=TMCtrlsDlg.Create(Application);
  163.   AChild.Show;
  164. end;
  165.  
  166. procedure TMainForm.Stringlists1Click(Sender: TObject);
  167. var I: Integer; AChild:TForm;
  168. begin
  169.   AChild:=nil;
  170.   for I := 0 to MDIChildCount-1 do
  171.     if (MDIChildren[I].ClassName='TStrListDlg') then AChild:=MDIChildren[I];
  172.   if (AChild=nil) then AChild:=TStrListDlg.Create(Application);
  173.   AChild.Show;
  174. end;
  175.  
  176. procedure TMainForm.Icons1Click(Sender: TObject);
  177. var I: Integer; AChild:TForm;
  178. begin
  179.   AChild:=nil;
  180.   for I := 0 to MDIChildCount-1 do
  181.     if (MDIChildren[I].ClassName='TIcons') then AChild:=MDIChildren[I];
  182.   if (AChild=nil) then AChild:=TIcons.Create(Application);
  183.   AChild.Show;
  184. end;
  185.  
  186. procedure TMainForm.ImportExport1Click(Sender: TObject);
  187. var I: Integer; AChild:TForm;
  188. begin
  189.   AChild:=nil;
  190.   for I := 0 to MDIChildCount-1 do
  191.     if (MDIChildren[I].ClassName='TImpExp') then AChild:=MDIChildren[I];
  192.   if (AChild=nil) then AChild:=TImpExp.Create(Application);
  193.   AChild.Show;
  194. end;
  195.  
  196. procedure TMainForm.Objectresizing1Click(Sender: TObject);
  197. var I: Integer; AChild:TForm;
  198. begin
  199.   AChild:=nil;
  200.   for I := 0 to MDIChildCount-1 do
  201.     if (MDIChildren[I].ClassName='TObjSize') then AChild:=MDIChildren[I];
  202.   if (AChild=nil) then AChild:=TObjSize.Create(Application);
  203.   AChild.Show;
  204. end;
  205.  
  206. procedure TMainForm.Adopton1Click(Sender: TObject);
  207. var I: Integer; AChild:TForm;
  208. begin
  209.   AChild:=nil;
  210.   for I := 0 to MDIChildCount-1 do
  211.     if (MDIChildren[I].ClassName='TAdptOn') then AChild:=MDIChildren[I];
  212.   if (AChild=nil) then AChild:=TAdptOn.Create(Application);
  213.   AChild.Show;
  214. end;
  215.  
  216. procedure TMainForm.Userdefinedstrings1Click(Sender: TObject);
  217. var I: Integer; AChild:TForm;
  218. begin
  219.   AChild:=nil;
  220.   for I := 0 to MDIChildCount-1 do
  221.     if (MDIChildren[I].ClassName='TDefStr') then AChild:=MDIChildren[I];
  222.   if (AChild=nil) then AChild:=TDefStr.Create(Application);
  223.   AChild.Show;
  224. end;
  225.  
  226. procedure TMainForm.Speedinlargeprojects1Click(Sender: TObject);
  227. var I: Integer; AChild:TForm;
  228. begin
  229.   AChild:=nil;
  230.   for I := 0 to MDIChildCount-1 do
  231.     if (MDIChildren[I].ClassName='TEditor') then AChild:=MDIChildren[I];
  232.   if (AChild=nil) then AChild:=TEditor.Create(Application);
  233.   AChild.Show;
  234. end;
  235.  
  236. procedure TMainForm.Order1Click(Sender: TObject);
  237. var I: Integer; AChild:TForm;
  238. begin
  239.   AChild:=nil;
  240.   for I := 0 to MDIChildCount-1 do
  241.     if (MDIChildren[I].ClassName='TRegister') then AChild:=MDIChildren[I];
  242.   if (AChild=nil) then AChild:=TRegister.Create(Application);
  243.   AChild.Show;
  244. end;
  245.  
  246. end.
  247.